问题描述:前端使用Get请求并且使用请求体传递参数,后端使用@RequestBody注解封装参数,这时会出现400的异常信息。解决方法:1、Get请求不要使用请求体,使用请求体的话用POST请求。(建议,这样才是正常的规范写法)2、保留Get请求与请求体,后端也可以用对象来封装请求体中的参数,但是封装对象需要去掉@RequestBody注解,不然会有400异常。触发场景:这个问题在用Postman去测试后端接口的时候并没有发现,因为这种情况在Postman中请求是合法的。然后在与前端同学联调接口的时候发现了这个问题。说明这种传递参数的方式在浏览器中并不合法。原因在http规范任何方法都能发送请
问题描述:前端使用Get请求并且使用请求体传递参数,后端使用@RequestBody注解封装参数,这时会出现400的异常信息。解决方法:1、Get请求不要使用请求体,使用请求体的话用POST请求。(建议,这样才是正常的规范写法)2、保留Get请求与请求体,后端也可以用对象来封装请求体中的参数,但是封装对象需要去掉@RequestBody注解,不然会有400异常。触发场景:这个问题在用Postman去测试后端接口的时候并没有发现,因为这种情况在Postman中请求是合法的。然后在与前端同学联调接口的时候发现了这个问题。说明这种传递参数的方式在浏览器中并不合法。原因在http规范任何方法都能发送请
远程调用返回400问题排查前言发生问题由来问题排查1.参数4002.请求头过大导致4003.header异常400总结前言我最近给公司一个两年前开发的项目售后,帮助客户验视功能点,顺便帮助解决项目中的问题,由于原负责该项目的项目组已经全都离职了,导致验收之路漫长且艰苦…在解决问题的过程中碰到了许多疑难杂症都一一解决了,唯独其中有一个问题让我和同事绞尽脑汁花了三天才得以解决,所以为了以后不再被这个问题困扰,特地记录一下,毕竟好记性不如烂笔头嘛,话不多说,我们接着往下看发生问题由来是这样一个问题,在测试的过程中发现某部分功能依赖的数据源有部分缺失的情况,然后就着手开始排查问题,调用链调用方式如下:
远程调用返回400问题排查前言发生问题由来问题排查1.参数4002.请求头过大导致4003.header异常400总结前言我最近给公司一个两年前开发的项目售后,帮助客户验视功能点,顺便帮助解决项目中的问题,由于原负责该项目的项目组已经全都离职了,导致验收之路漫长且艰苦…在解决问题的过程中碰到了许多疑难杂症都一一解决了,唯独其中有一个问题让我和同事绞尽脑汁花了三天才得以解决,所以为了以后不再被这个问题困扰,特地记录一下,毕竟好记性不如烂笔头嘛,话不多说,我们接着往下看发生问题由来是这样一个问题,在测试的过程中发现某部分功能依赖的数据源有部分缺失的情况,然后就着手开始排查问题,调用链调用方式如下:
冷静,不是那个开车,是正经秋名山新司机开车——科目二考试直播。半小时下来,那叫一个提神醒脑,直接给我看哭了。如果你也觉得生活无趣,就去看看别人考驾照吧,这可比密室逃脱、剧本杀刺激多了。爱看直播驾考的不止我一个人,这个由陕西的交警蜀黍官方开设的直播间,人多的时候甚至有400w观众同时观看。我在一个普通周一的下午3点51分,点进广东交警直播间,观看人次竟然也达到了100w,这些人都不用上班的吗??对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧1、环境PyCharmPython3.6pip安装的依赖包包括:requests2.25.0、urllib31.26.2
冷静,不是那个开车,是正经秋名山新司机开车——科目二考试直播。半小时下来,那叫一个提神醒脑,直接给我看哭了。如果你也觉得生活无趣,就去看看别人考驾照吧,这可比密室逃脱、剧本杀刺激多了。爱看直播驾考的不止我一个人,这个由陕西的交警蜀黍官方开设的直播间,人多的时候甚至有400w观众同时观看。我在一个普通周一的下午3点51分,点进广东交警直播间,观看人次竟然也达到了100w,这些人都不用上班的吗??对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧1、环境PyCharmPython3.6pip安装的依赖包包括:requests2.25.0、urllib31.26.2
背景最近分析数据偶然发现nginxlog中有一批用户所有的HTTPPOSTlog上报请求均返回400,没有任何200成功记录,由于只占整体请求的不到0.5%,所以之前也一直没有触发监控报警,而且很奇怪的是只对于log上报的POST接口会存在这种特定用户全部400的情况,而对于其他接口无论POST还是GET均没有此类问题。进一步分析log发现其实对某些地区的用户请求,这个比例甚至超过了10%,于是花时间跟进了一下,最终发现源于部分机型客户端发出的HTTP请求格式不规范导致,这里记录一下分析过程、原因以及最终解决方案。问题分析常见nginx400原因搜寻网上资料,发现一般可能有以下几个原因会导致n
背景最近分析数据偶然发现nginxlog中有一批用户所有的HTTPPOSTlog上报请求均返回400,没有任何200成功记录,由于只占整体请求的不到0.5%,所以之前也一直没有触发监控报警,而且很奇怪的是只对于log上报的POST接口会存在这种特定用户全部400的情况,而对于其他接口无论POST还是GET均没有此类问题。进一步分析log发现其实对某些地区的用户请求,这个比例甚至超过了10%,于是花时间跟进了一下,最终发现源于部分机型客户端发出的HTTP请求格式不规范导致,这里记录一下分析过程、原因以及最终解决方案。问题分析常见nginx400原因搜寻网上资料,发现一般可能有以下几个原因会导致n
400是HTTP的状态码,主要有两种形式:1、badrequest意思是"错误的请求";2、invalidhostname意思是"不存在的域名"。400BadRequest是由于明显的客户端错误(例如,格式错误的请求语法,太大的大小,无效的请求消息或欺骗性路由请求),服务器不能或不会处理该请求。在ajax请求后台数据时比较常见。产生HTTP400错误的原因有:1、前端提交数据的字段名称或者是字段类型和后台的实体类不一致,导致无法封装;2、前端提交的到后台的数据应该是json字符串类型,而前端没有将对象转化为字符串类型;解决方案:1、对照字段名称,类型保证一致性2、使用stringify将前端传